﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WCS.Infrastructure.Dto.Request.Epaylinks
{
    /// <summary>
    /// 其他信息
    /// </summary>
    public class EpaylinksOtherInfo
    {
        /// <summary>
        /// 平台商户微信渠道号，与 wechatbusinessId 同时上传或不传，长度限制为 30
        /// </summary>
        [MaxLength(30)]
        public string WechatChannelId { get; set; }

        /// <summary>
        /// 微信经营类目 ID，见附件”微信-经营类目 ID”，且与 wechatChannelId 同时上传或不传，长度限制为 30
        /// </summary>
        [MaxLength(30)]
        public string WechatBusinessId { get; set; }

        /// <summary>
        /// 平台商户支付宝渠道商 PID，需开通支付宝支付相关业务必传，与 alipayMcc 同时上传或不传，长度限制为 30
        /// </summary>
        [MaxLength(30)]
        public string AlipayChannelId { get; set; }

        /// <summary>
        /// 支付宝 MCC，见附件”支付宝-MCC”，与 alipayChannelId 同时上传或不传，长度限制为 30
        /// </summary>
        [MaxLength(30)]
        public string AlipayMcc { get; set; }

        /// <summary>
        /// 微信认证商户名，长度限制为 30
        /// </summary>
        [MaxLength(30)]
        public string WechatMerchantName { get; set; }

        /// <summary>
        /// 支付宝认证商户名，长度限制为 30
        /// </summary>
        [MaxLength(30)]
        public string AlipayMerchantName { get; set; }

        /// <summary>
        /// 是否由收单机构适配上游商户名（认证使用）：1：是，0：否，长度限制为 1
        /// </summary>
        [MaxLength(1)]
        public string AcqMatchName { get; set; }

        /// <summary>
        /// 银联快捷简称，长度限制为 16
        /// </summary>
        [MaxLength(16)]
        public string UnionShortName { get; set; }

        /// <summary>
        /// 客服电话，长度限制为 15
        /// </summary>
        [MaxLength(15)]
        public string ServiceTel { get; set; }

        /// <summary>
        /// ICP 备案号，长度限制为 50
        /// </summary>
        [MaxLength(50)]
        public string IcpRecordNo { get; set; }

        /// <summary>
        /// 网址，长度限制为 200
        /// </summary>
        [MaxLength(200)]
        public string SiteUrl { get; set; }

        /// <summary>
        /// 网站或 APP 的名称，长度限制为 128
        /// </summary>
        [MaxLength(128)]
        public string WebsiteOrAppName { get; set; }

        /// <summary>
        /// 小程序名称，长度限制为 200
        /// </summary>
        [MaxLength(200)]
        public string WxMiniAppName { get; set; }

        /// <summary>
        /// 公众号名称，长度限制为 200
        /// </summary>
        [MaxLength(200)]
        public string WxPublicAccountName { get; set; }

        /// <summary>
        /// 小程序截图（认证页），文件标识（fileID），限图片，参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string WxMiniAppAuthPage { get; set; }

        /// <summary>
        /// 小程序截图（首页），文件标识（fileID），限图片，参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string WxMiniAppHomePage { get; set; }

        /// <summary>
        /// 小程序截图（订单提交页），文件标识（fileID），限图片，参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string WxMiniAppOrderPage { get; set; }

        /// <summary>
        /// 公众号截图（认证页），文件标识（fileID），限图片，参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string WxPublicAccountAuthPage { get; set; }

        /// <summary>
        /// 公众号截图（首页），文件标识（fileID），限图片，参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string WxPublicAccountHomePage { get; set; }

        /// <summary>
        /// 公众号截图（订单提交页），文件标识（fileID），限图片，参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string WxPublicAccountOrderPage { get; set; }

        /// <summary>
        /// ICP 备案证明截图，文件标识（fileID），限图片，参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string IcpRecordPhoto { get; set; }

        /// <summary>
        /// 网站截图（网址首页），文件标识（fileID），限图片，参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string WebsiteHomePage { get; set; }

        /// <summary>
        /// 网站截图（网址售后页），文件标识（fileID），限图片，参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string WebsiteAfterSales { get; set; }

        /// <summary>
        /// 网站截图，文件标识（fileID），限图片，参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string WebsiteOthers { get; set; }

        /// <summary>
        /// 场景说明书，文件标识（fileID），限图片，参考附件上传，限 3 张
        /// </summary>
        public List<string> ScenarioPhoto { get; set; }

        /// <summary>
        /// 支付流程图，文件标识（fileID），限图片，参考附件上传，限 2 张
        /// </summary>
        public List<string> PayFlowchart { get; set; }

        /// <summary>
        /// 支付流程图（附件），文件标识（fileID），参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string PayFlowchartAttachment { get; set; }

        /// <summary>
        /// 特殊许可证，文件标识（fileID），限图片，参考附件上传，限 3 张
        /// </summary>
        public List<string> SpecialPermit { get; set; }

        /// <summary>
        /// 代付客户合作协议，Zip，文件标识（fileID），参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string WithdrawAgreement { get; set; }

        /// <summary>
        /// 应用市场下载截图，文件标识（fileID），限图片，参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string AppStorePage { get; set; }

        /// <summary>
        /// app 功能视频，不限格式，文件标识（fileID），参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string AppDescVideo { get; set; }

        /// <summary>
        /// 其他表格附件，不限格式，文件标识（fileID），参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string OtherSheetAttachment { get; set; }

        /// <summary>
        /// 手持开户意愿书照片，文件标识（fileID），限图片，参考附件上传，限 2 张
        /// </summary>
        public List<string> HandheldPhotoForAccount { get; set; }

        /// <summary>
        /// 手持开户意愿书照片视频，手持开户意愿书照片与手持开户意愿视频 二填一，文件标识（fileID），参考附件上传，长度限制为 40
        /// </summary>
        [MaxLength(40)]
        public string HandheldVideoForAccount { get; set; }
    }
}
